Many technologies have been developed to stream media data over communication networks. These technologies include Hypertext Transfer Protocol Streaming (HTTP Streaming), such as Dynamic Adaptive Streaming over HTTP (DASH). In DASH, multimedia content is encoded in a variety of different ways, producing different representations of the multimedia content. Each of the representations is divided into a series of segments. The segments contain data representing samples of the multimedia content. For example, each of the segments can represent a different three-second sequence of samples of the multimedia content. Each of the segments may have a different Uniform Resource Locator (URL).
In DASH, a client device receives a manifest file that describes characteristics of the various representations of the multimedia content. The manifest file may contain information indicating the URLs of the segments of the representations. To stream data of the multimedia content from a server device, the client sends requests, e.g., GET or partial GET requests, to the server over time. The requests specify URLs for the segments of particular representations as indicated in the manifest file. As the client device receives the segments from the server device, the client device processes the segments (e.g., decodes and renders coded video data of the segments) to present the samples of the media content represented by the segments.